package com.ruoyi.course.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 题目信息对象 cd_topic_message
 * 
 * @author ruoyi
 * @date 2023-12-18
 */
@Data
public class CdTopicMessage extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 题目id */
    private Long topicId;

    /** 指导教师id */
    @Excel(name = "指导教师id")
    private Long teacherId;

    /** 指导教师姓名 */
    @Excel(name = "指导教师姓名")
    private String teacherName;

    /** 所属课程id */
    @Excel(name = "所属课程id")
    private Long courseId;

    /** 所属课程名称 */
    @Excel(name = "所属课程名称")
    private String courseName;

    /** 题目名称 */
    @Excel(name = "题目名称")
    private String topicName;

    /** 题目描述 */
    @Excel(name = "题目描述")
    private String topicDescribe;

    /** 教师上传文件路径 */
    @Excel(name = "教师上传文件路径")
    private String fileByTeacher;

    /** 学生上传文件路径 */
    @Excel(name = "学生上传文件路径")
    private String fileByStudent;

    /** 开始检查时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始检查时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date checkStartTime;

    /** 结束检查时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束检查时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date checkEndTime;

    /** 学生预约时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "学生预约时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date checkAppointTime;

    /** 最大人数 */
    @Excel(name = "最大人数")
    private Integer maxNum;

    /** 状态(0草稿,10提交,20审核通过,30正式开始,40学生预约,50教师同意) */
    @Excel(name = "状态(0草稿,10提交,20审核通过,30正式开始,40学生预约,50教师同意)")
    private String status;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;
}
